// 1582. 二进制矩阵中的特殊位置
// 给你一个大小为 rows x cols 的矩阵 mat，其中 mat[i][j] 是 0 或 1，请返回 矩阵 mat 中特殊位置的数目 。

// 特殊位置 定义：如果 mat[i][j] == 1 并且第 i 行和第 j 列中的所有其他元素均为 0（行和列的下标均 从 0 开始 ），则位置(i, j) 被称为特殊位置。

/**
 * @param {number[][]} mat
 * @return {number}
 */
var numSpecial = function (mat) {
  let r = mat.length, c = mat[0].length
  let rList = new Array(r).fill(0), cList = new Array(c).fill(0)
  let count = 0
  for (let i = 0; i < r; i++) {
    for (let j = 0; j < c; j++) {
      rList[i] += mat[i][j]
      cList[j] += mat[i][j]
    }
  }
  for (let i = 0; i < r; i++) {
    for (let j = 0; j < c; j++) {
      if (rList[i] === 1 && cList[j] === 1 && mat[i][j]) {
        count++
      }

    }
  }
  console.log(rList,cList)
  return count
};

var mat = [
  [0, 0, 1, 0],
  [0, 0, 0, 0],
  [0, 0, 0, 0],
  [0, 1, 0, 0]]

console.log(numSpecial(mat))

